A business, corporation, and/or company, is commonly referred to as an Enterprise. Cloud computing is generally becoming the platform of choice for Enterprises that want to reduce operating expenses and be able to scale resources rapidly. “Clouds” may be provided by different cloud providers to provide Enterprises access of computing resources over a computer network. Clouds can provide Software-as-a-service (SaaS), sometimes referred to as “on-demand software,” to various Enterprises. SaaS is a software delivery model in which software and its associated data are hosted centrally, typically in a cloud, and are accessed by user using, for example, a web browser, over the Internet. SaaS has become a common delivery model for most business applications, such as customer relationship management (CRM).
Many SaaS providers price their services based on the number of Enterprise users accessing their various business applications (e.g., CRM applications). With such a pricing model, Enterprise may incur unwarranted costs if not all of the accounts that are being paid for are being used fully. For example, in an Enterprise, not all employees may use the travel application provided by a SaaS provide at the same time. Nonetheless, many Enterprises pay for an account for each employee and the SaaS provider bills the Enterprise for all the active accounts regardless of use.
SaaS is a cloud service and has its own specification of roles and permissions. Application programming interfaces (APIs) associated with SaaS may not be generic and vary from provider to provider. As a result, a setup on one particular SaaS may therefore be different than a setup on another SaaS. Therefore, role-based access control may be difficult to implement, especially across multiple SaaS or cloud service platforms. In view of the foregoing, it may be understood that there may be significant problems and shortcomings associated with conventional role-based access control technologies as applied to SaaS infrastructure.